XXXXmmmmCCCCaaaassssccccaaaaddddeeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt - The CascadeButtonGadget widget class
SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
#include <Xm/CascadeBG.h>
VVVVEEEERRRRSSSSIIIIOOOONNNN
This page documents Motif 2.1.
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
CascadeButtonGadget links two menu panes, a MenuBar to a
menu pane, or an OptionMenu to a menu pane.
It is used in menu systems and must have a RowColumn parent
with its XXXXmmmmNNNNrrrroooowwwwCCCCoooolllluuuummmmnnnnTTTTyyyyppppeeee resource set to XXXXmmmmMMMMEEEENNNNUUUU____BBBBAAAARRRR,
XXXXmmmmMMMMEEEENNNNUUUU____PPPPOOOOPPPPUUUUPPPP, XXXXmmmmMMMMEEEENNNNUUUU____PPPPUUUULLLLLLLLDDDDOOOOWWWWNNNN, or XXXXmmmmMMMMEEEENNNNUUUU____OOOOPPPPTTTTIIIIOOOONNNN.
It is the only gadget that can have a Pulldown menu pane
attached to it as a submenu. The submenu is displayed when
this gadget is activated within a PopupMenu, a PulldownMenu,
or an OptionMenu. Its visuals can include a label or pixmap
and a cascading indicator when it is in a Popup or Pulldown
menu pane; or it can include only a label or a pixmap when
it is in an OptionMenu. The positioning of the PulldownMenu
with respect to the CascadeButton depends on the
XXXXmmmmNNNNllllaaaayyyyoooouuuuttttDDDDiiiirrrreeeeccccttttiiiioooonnnn resource of the MenuShell.
The default behavior associated with a CascadeButtonGadget
depends on the type of menu system in which it resides. By
default, BBBBSSSSeeeelllleeeecccctttt controls the behavior of the
CascadeButtonGadget. In addition, BBBBMMMMeeeennnnuuuu controls the
behavior of the CascadeButtonGadget if it resides in a
PopupMenu system. The actual mouse button used is
determined by its RowColumn parent. BBBBMMMMeeeennnnuuuu also performs the
BBBBSSSSeeeelllleeeecccctttt actions in all types of menu systems.
A CascadeButtonGadget's visuals differ from most other
button gadgets. When the button becomes armed, its visuals
change from a 2-D to a 3-D look, and it displays the submenu
that has been attached to it. If no submenu is attached, it
simply changes its visuals.
When a CascadeButtonGadget within a Pulldown or Popup menu
pane is armed as the result of the user moving the mouse
pointer into the gadget, it does not immediately display its
submenu. Instead, it waits a short time to see if the arming
was temporary (that is, the user was simply passing through
the gadget), or the user really wanted the submenu posted.
This delay is configurable using XXXXmmmmNNNNmmmmaaaappppppppiiiinnnnggggDDDDeeeellllaaaayyyy.
CascadeButtonGadget provides a single mechanism for
activating the gadget from the keyboard. This mechanism is
referred to as a keyboard mnemonic. If a mnemonic has been
specified for the gadget, the user may activate it by simply
typing the mnemonic while the CascadeButtonGadget is
visible. If the CascadeButtonGadget is in a MenuBar and the
MenuBar does not have focus, the MMMMAAAAlllltttt modifier must be
pressed with the mnemonic. Mnemonics are typically used to
interact with a menu using the keyboard.
If a CascadeButtonGadget is in a Pulldown or Popup menu pane
and there is a submenu attached, the XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnBBBBoooottttttttoooommmm,
XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnLLLLeeeefffftttt, XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnRRRRiiiigggghhhhtttt, and XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnTTTTooooppppresources may
enlarge to accommodate XXXXmmmmNNNNccccaaaassssccccaaaaddddeeeePPPPiiiixxxxmmmmaaaapppp. XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnWWWWiiiiddddtttthhhh
defaults to 6 if this resource is in a MenuBar; otherwise,
it takes LabelGadget's default, which is 2.
CascadeButtonGadget uses the _X_m_Q_T_m_e_n_u_S_y_s_t_e_m and
CascadeButtonGadget inherits behavior, resources, and traits
from the OOOObbbbjjjjeeeecccctttt, RRRReeeeccccttttOOOObbbbjjjj, XXXXmmmmGGGGaaaaddddggggeeeetttt, and XXXXmmmmLLLLaaaabbbbeeeellllGGGGaaaaddddggggeeeetttt
classes.
The class pointer is _x_m_C_a_s_c_a_d_e_B_u_t_t_o_n_G_a_d_g_e_t_C_l_a_s_s.
The class name is XXXXmmmmCCCCaaaassssccccaaaaddddeeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt.
NNNNeeeewwww RRRReeeessssoooouuuurrrrcccceeeessss
The following table defines a set of widget resources used
by the programmer to specify data. The programmer can also
set the resource values for the inherited classes to set
attributes for this widget. To reference a resource by name
or by class in a ....XXXXddddeeeeffffaaaauuuullllttttssss file, remove the XXXXmmmmNNNN or XXXXmmmmCCCC
prefix and use the remaining letters. To specify one of the
defined values for a resource in a ....XXXXddddeeeeffffaaaauuuullllttttssss file, remove
the XXXXmmmm prefix and use the remaining letters (in either
lowercase or uppercase, but include any underscores between
words). The codes in the access column indicate if the
given resource can be set at creation time (C), set by using
XXXXttttSSSSeeeettttVVVVaaaalllluuuueeeessss (S), retrieved by using XXXXttttGGGGeeeettttVVVVaaaalllluuuueeeessss (G), or is
only when the gadget is within a Popup or Pulldown
menu pane. The value must not be negative.
XXXXmmmmNNNNssssuuuubbbbMMMMeeeennnnuuuuIIIIdddd
Specifies the widget ID for the Pulldown menu pane
to be associated with this CascadeButtonGadget.
The specified menu pane is displayed when the
CascadeButtonGadget becomes armed. The menu pane
must have been created with the appropriate
parentage depending on the type of menu used. See
XXXXmmmmCCCCrrrreeeeaaaatttteeeePPPPuuuullllllllddddoooowwwwnnnnMMMMeeeennnnuuuu(3), XXXXmmmmCCCCrrrreeeeaaaatttteeeePPPPooooppppuuuuppppMMMMeeeennnnuuuu(3), and
XXXXmmmmCCCCrrrreeeeaaaatttteeeeOOOOppppttttiiiioooonnnnMMMMeeeennnnuuuu(3) for more information on the